Open Source, EU Funding and Agile Methods

نویسندگان

  • Bea Düring
  • Holger Krekel
چکیده

This paper walks through different aspects of agility within the open-source PyPy project. Agility has played a key role from the beginning. The PyPy project started from some mails between a few people, quickly had a first one-week meeting, a “sprint”, from where it evolved into a structure that was able to carry out a research project and got accepted by the European Union. During the course, two companies were founded. They are now growing and employing key developers. PyPy’s technical development is strongly rooted in open-source contexts and this adds another agility aspect free communication, co-operation and exchange with other people and projects. The process of obtaining EU-funding is a continous challenge to the community-rooted PyPy project; how to connect agile open source culture with formal structures, interaction with requirements like planning, budget estimation, work distribution and resource tracking. After our first “funded” year we are reasonably happy with the balance we strike between organisations and EU funding on the one and the developers driving the technical aspects of the project on the other side. 1 Agility in Technical Development and Organisation 1.1 Agile approaches: sprinting PyPy first started during a one-week meeting, a “sprint”, held at Trillke-Gut in Hildesheim February 2003. The sprint was inspired by practices used by other Python projects such as Zope3. Originally the sprint methodology used in the Python community grew from practices applied by the Zope Corporation. Their definition of a sprint was: “two-day or three-day focused development session, in which developers pair 1http://codespeak.net/pypy off together in a room and focus on building a particular subsystem”. Sprinting up to a week became the initial driving factor in developing the code base and the community/people around it. The early PyPy sprints were organised by core developers together with local Pythonistas in Louvain La Neuve, Gothenburg, Vilnius and Amsterdam. Sprints gave the opportunity to both help, participate and influence the ideas within PyPy. Sprints are actually not part of the traditional Agile portfolio of techniques, the closest thing to it comes from Scrum who names the 30 days long programming iterations “sprints”, covering a certain increment. With the Scrum method, considerable effort is put into performing the sprint planning as well as creating and documenting the “sprint backlog” which is then feedbacked into the “Product backlog”. The sprint ends with a “sprint review” an informal planning session in which the team decides on upcoming work. There are also techniques in which the team looks at ways to improve the development methodology and future sprints. To our knowledge, open-source projects these days are sprinting for at most a week which reflects the fact that many contributors give their time and even money to gather and work together. This is different from having fully funded people from one company working together. Why did PyPy choose sprinting as a key technique? It is a method that fits distributed teams well because it gets the team focused around visible challenging goals while working collarobatively (pair-programming, status meetings, discussions etc) as well as acceleratedly (short increments and tasks, “doing” and testing instead of long startups of planning and requirement gathering). This means that most of the time a sprint is a great way of getting results and getting new people aquainted a good method for dissemination of knowledge and learning within the team. A key insight, worthwhile for other EU-projects to ponder, is how an agile process like sprinting is much more suited for creative work between groups of dis-

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Open Source and Agile: Two worlds that should have a closer interaction

Agile methods and open source software communities share similar cultures with different approaches to overcome problems. Although several professionals are involved in both worlds, neither agile methodologies are as strong as they could be in open source communities nor those communities provide strong contributions to agile methods. This work identifies and exposes the obstacles that separate...

متن کامل

Source Code Control Workflows for Open Source Software

Many open source projects rely on the dedicated and highly skilled members of distributed development teams. These teams often employ agile methods, as the focus is on concurrent development and fast production over requirements management and quality assurance. The image-guided surgical toolkit is an open source project that relies on the collaboration of a skilled distributed development team...

متن کامل

OJAX: a case study in agile Web 2.0 open source development

Purpose: This paper describes a case study of the development, features and evaluation of a Rich Internet Application for libraries. It attempts to demonstrate best practice in the use of software standards, development processes and evaluation. Methodology/approach: Web 2.0, open source design methods and usability testing were used within an Agile framework. Findings: The adoption of Agile so...

متن کامل

Is Open Source Software Development Essentially an Agile Method?

It has been argued that Open Source Software (OSS) development differs from the agile software development mode in philosophical, economical, and team structural aspects. This paper investigates the OSS development characteristics from four perspectives: process, roles and responsibilities, practices, and scope of use. The study shows that while from a legal perspective the OSS development para...

متن کامل

Exploring the Role of Value Networks for Software Innovation

This paper describes a research-in-progress that aims to explore the applicability and implications of open innovation practices in two firms – one that employs agile development methods and another that utilizes open source software. The open innovation paradigm has a lot in common with open source and agile development methodologies. A particular strength of agile approaches is that they move...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005